Skip to content

Comments

Update Privacy Pools vendor file to reflect v1 deployment#92

Open
0xmikemcc wants to merge 2 commits intoethereum:masterfrom
0xbow-io:update-privacy-pools-vendor
Open

Update Privacy Pools vendor file to reflect v1 deployment#92
0xmikemcc wants to merge 2 commits intoethereum:masterfrom
0xbow-io:update-privacy-pools-vendor

Conversation

@0xmikemcc
Copy link

Summary

The current vendors/privacypools.md was written from the 2023 SSRN paper, not the actual v1 deployment. This PR updates it to reflect the production state and adds cross-references across the repo.

Key issues fixed:

  • "Not yet deployed at large scale" — v1 has been live on Ethereum mainnet since 2025
  • GitHub link — pointed to ameensol/privacy-pools (research repo) instead of 0xbow-io/privacy-pools-core
  • Pattern mappings — incorrectly mapped to ISO 20022 and derivatives patterns instead of L1 ZK Commitment Pool and Shielding
  • Missing from private payments approach — Railgun, Aztec, Fhenix, Intmax listed but not Privacy Pools
  • No contract addresses listed despite being live on mainnet

Changes:

  1. vendors/privacypools.md — Full rewrite with:

    • Accurate v1 architecture (upgradeable proxy Entrypoint, asset-specific pools)
    • Mainnet contract addresses
    • Correct pattern mappings (L1 ZK Commitment Pool, Shielded ERC-20 Transfers, etc.)
    • Viewing keys / auditor access (live on StarkNet v1, EVM v1 planned)
    • Expanded enterprise use cases (CEX, wallet providers, institutional custody, OTC, compliance/audit)
    • Progressive ASP decentralisation (0xbow on Ethereum, Brevis on BNB Chain)
    • Correct GitHub link and additional references
  2. approaches/approach-private-payments.md — Added:

    • "L1 Compliance-Friendly Shielding (Privacy Pools)" subsection under Privacy Approaches
    • Privacy Pools under Vendor Recommendations > Primary Infrastructure
    • Privacy Pools link in Links and Notes > Infrastructure
  3. patterns/pattern-l1-zk-commitment-pool.md — Added vendor cross-reference to Privacy Pools in See also

  4. patterns/pattern-shielding.md — Added:

    • Privacy Pools alongside Railgun in Implementations bullet
    • Privacy Pools link in See also
  5. GLOSSARY.md — Added definitions for:

    • Association Set — core concept unique to this protocol
    • Association Set Provider (ASP) — entity that constructs association sets

Context

This PR is submitted by 0xbow, the developer and operator of the Privacy Pools protocol. We want to ensure the IPTF map accurately represents the current production state of the protocol for institutional evaluators.

- Replace vendors/privacypools.md with accurate v1 deployment info
- Add viewing keys, enterprise use cases, progressive ASP decentralisation
- Add Privacy Pools to private payments approach and vendor recommendations
- Add cross-references in L1 ZK commitment pool and shielding patterns
- Add Association Set and ASP glossary entries
- [Shielded ERC-20 Transfers](../patterns/pattern-shielding.md) with commitment/nullifier schemes
- Higher per-transaction costs but battle-tested infrastructure

**L1 Compliance-Friendly Shielding (Privacy Pools):**
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest that instead of having a new category, we add an extra bullet point to the above.

  • Extends the shielded pool model with association set proofs for regulatory compliance signaling with Privacy Pools


## See also
- pattern-dvp-erc7573.md · pattern-regulatory-disclosure-keys-proofs.md
- Privacy Pools (vendor): ../vendors/privacypools.md — production L1 implementation of this pattern with compliance extensions
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a link instead?
Privacy Pools (vendor):

- Railgun: https://docs.railgun.org/wiki
- Aztec docs: https://docs.aztec.network/
- Zama fhEVM: https://docs.zama.org/protocol/protocol/overview
- Privacy Pools: https://privacypools.com (compliance-friendly shielded pool with association set proofs)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description in parentheses is redundant with line 27.


**Association Set**: A defined subset of deposits in a shielded pool, constructed by an Association Set Provider (ASP) according to compliance policies (e.g., excluding sanctioned addresses). Users prove membership or exclusion in an association set during withdrawal to signal compliance without revealing their specific deposit.

**Association Set Provider (ASP)**: An entity that defines, computes, and publishes association sets for a shielded pool. ASPs apply screening rules (sanctions lists, chain analytics, KYC credentials) to classify deposits and publish the resulting set as a Merkle root that users can prove against.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great!

@Meyanis95
Copy link
Collaborator

Thanks for the PR @0xmikemcc
I added a few comments, and I am waiting for the CI checks to pass.

You can run the linter locally with the following:

# Run all validations
npm run validate        # Frontmatter schemas, required sections, word limits
npm run check-terms     # GLOSSARY.md term consistency
npm run lint:vale       # Prose quality (requires: brew install vale)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants